In wireless systems, joint detection (JD) is used to mitigate inter-symbol interference (ISI) and multiple-access interference (MAI). JD is characterized by good performance but high complexity. Even using approximate Cholesky or block Fourier transforms with Cholesky decomposition algorithms, the complexity of JD is still very high. When JD is adopted in a wireless receiver, its complexity prevents the receiver from being implemented efficiently. This evidences the need for alternative algorithms that are not only simple in implementation but also good in performance.
To overcome this problem, prior art receivers based on a channel equalizer followed by a code despreader have been developed. These types of receivers are called single user detection (SUD) receivers because, contrary to JD receivers, the detection process does not require the knowledge of channelization codes of other users. SUD tends to not exhibit the same performance as JD for most data rates of interest, even though its complexity is very low. Accordingly, there exists a need for low complexity high performance data detectors.